/*
 * Broker.h
 *
 *  Created on: 30/mag/2014
 *      Author: PegorarS
 */

#ifndef BROKER_H_
#define BROKER_H_

#include "stockexchange.h"
#include "stocklistseries.h"

namespace NS_STOCKEXCHANGE{

	class Broker : public PublisherStockExchangeI, public Subscriber<Date>{
	public:
		Broker();
		virtual ~Broker();

		virtual void StartSeries(Ticker stockSeriesName);
		virtual void Publish(StockData stockData);

		virtual void Update(Date &newDate);

		virtual void CommitOrder(Order *pOrder);

	protected:
		StockListSeries *m_pStockListSeries;
	};
}


#endif /* BROKER_H_ */
